Apparatus and method for transmitting data using a CTC (Convolutional Turbo Code) encoder in a mobile communication system

ABSTRACT

Apparatus and method for transmitting data using a CTC (Convolutional Turbo Code) encoder in a mobile communication system. The data transmission method according to the present invention includes: a first encoding step of encoding input data bits inputted through two input terminals of the CTC encoder and outputting first encoding bits; a step of interleaving the input data bits by using four CTC interleaver parameters (P0, P1, P2, and P3) corresponding to the sizes of the input data bits; a second encoding step of encoding the interleaved data bits and outputting second encoding bits; and a step of selectively transmitting the input data bits, the first encoding bits, and the second encoding bits to a receiving side in accordance with a predetermined coding rate.

CROSS-REFERENCE TO RELATED APPLICATIONS

This application is a 371 U.S. national stage application ofInternational Application No. PCT/KR2009/003827, filed on Jul. 13, 2009,which claims priority to U.S. Provisional Application Ser. Nos.61/154,747, filed on Feb. 23, 2009, 61/154,417, filed on Feb. 22, 2009,61/122,413, filed on Dec. 15, 2008, and 61/080,274, filed on Jul. 13,2008, the contents of which are incorporated by reference herein intheir entirety.

BACKGROUND OF THE INVENTION

1. Field of the Invention

The present invention relates to an apparatus and method fortransmitting data, and more particularly, to an apparatus and method fora transmitting end to transmit data using a Convolutional Turbo Code(CTC) encoder in a mobile communication system.

2. Discussion of the Related Art

In a wireless communication system, portions of transmission data maysometimes be lost at once due to fading. If consecutive data bits arelost at once, this error cannot be recovered from even when a veryexcellent error correction code is used.

In a wireless communication system, the transmitting end transmits anencoded transmission data sequence after changing the order of thetransmission data bits according to a specific pattern using a channelinterleaving method rather than transmitting the data bits in an orderin which the data bits are input. That is, a burst error that frequentlyoccurs in a radio link can be changed to a random error using channelinterleaving.

When error bits are sparsely present among encoded transmission data,the error bits may be corrected using an error correction code such as aconvolutional code, a turbo code, or a Low Density Parity Check (LDPC)code.

Basically, turbo coding, which is a channel coding technology, is ascheme which connects convolutional codes through parallelconcatenation. The Convolutional Turbo Code (CTC) is one of the channelcodes used in mobile Internet services.

As is well known, a next-generation mobile communication system requiresreliable transmission of multimedia data at a high speed and requiresrobust channel coding and an efficient modulation scheme in order toincrease reliability of high-speed data transmission. Various codingschemes having specifications enabling high-speed data communicationsuch as convolutional coding or turbo coding have been suggested andintroduced in many countries. Such channel coding schemes exhibit betterperformance depending on an interleaver size or a corresponding datablock size. Thus, intensive studies have been carried out on aninterleaver that greatly affects turbo code performance.

CTC may support two data block size sets in the case of channel codingin a conventional Institute of Electrical and Electronics Engineers(IEEE) 802.16e system. One of the two data block size sets includes datablock sizes of 48, 72, 96, 144, 192, 216, 240, 288, 360, 384, 432, and480 and the other includes data block sizes of 48, 96, 144, 192, 288,384, 480, 960, 1920, 2880, 3840, and 4800. However, even when the twodata block size sets are combined, data block sizes at great intervalstherebetween may be selected from the combined range of 48 to 4800.

Table 1 shows each data block size and values of corresponding CTCinterleaver parameters P₀, P₁, P₂, and P₃ in the conventional IEEE802.16e system.

TABLE 1 index N_(EP) P₀ P₁ P₂ P₃ 1 48 5 0 0 0 2 72 11 18 0 18 3 96 13 240 24 4 144 11 6 0 6 5 192 7 48 24 72 6 240 13 60 0 60 7 288 17 74 72 2 8360 11 90 0 90 9 384 11 96 48 144 10 432 13 108 0 108 11 480 13 120 60180 12 960 53 62 12 2 13 1920 43 64 300 824 14 2880 43 720 360 540 153840 31 8 24 16 16 4800 53 66 24 2

Since a CTC encoder can only support data block sizes corresponding tothe preset data block size sets, there is a need to use padding bitswhen an information block size is not included in the data block sizesets. The number of padding bits is equal to the difference between theinformation block size and the smallest data block size in the setgreater than the information block size. Thus, if granularity, whichcorresponds to the difference between two adjacent data block sizes in adata block size set, is increased in the data block size set, paddingoverhead is also increased.

The IEEE 802.16e system has great padding overhead since the CTC datablock sizes have a great interval of granularity. Thus, although thereis a need to define new CTC data block sizes, CTC data block sizeshaving better granularity have not yet been suggested in the IEEE802.16m system.

SUMMARY OF THE INVENTION

Accordingly, an object of the present invention is to provide a methodfor a transmitting end to transmit data using a Convolutional Turbo Code(CTC) encoder in a mobile communication system.

Another object of the present invention is to provide an apparatus for atransmitting end to transmit data using a Convolutional Turbo Code (CTC)encoder in a mobile communication system.

Additional advantages, objects, and features of the invention will beset forth in part in the description which follows and in part willbecome apparent to those having ordinary skill in the art uponexamination of the following or may be learned from practice of theinvention. The objectives and other advantages of the invention may berealized and attained by the structure particularly pointed out in thewritten description and claims hereof as well as the appended drawings.

To achieve these objects and other advantages and in accordance with thepurpose of the invention, as embodied and broadly described herein, amethod for a transmitting data using a Convolutional Turbo Code (CTC)encoder in a mobile communication system includes providing firstencoded bits by encoding input data bits inputted to two input ports ofthe CTC encoder, interleaving the input data bits using 4 CTCinterleaver parameters (P₀, P₁, P₂, and P₃) corresponding to a size ofthe input data bits, providing second encoded bits by encoding theinterleaved input data bits, and selectively transmitting the input databits, the first encoded bits, and the second encoded bits according to apredefined code rate, wherein the size of the input data bits is one ofM predetermined data bit sizes, and wherein P₀ is relative prime numberwith N which is ½ of the size of the input data bits, P₁ is a multipleof 2 among natural numbers, P₂ is a multiple of 4 among the naturalnumbers, and wherein P₃ is a multiple of 2 among the natural numberswhen (P₁ modulo 4)=2, and P₃ is a multiple of 4 among the naturalnumbers when (P₁ modulo 4)=0.

In another aspect of the present invention, an apparatus fortransmitting data using a Convolutional Turbo Code (CTC) encoder in amobile communication system includes a first encoder for providing firstencoded bits by encoding input data bits inputted to two input ports ofthe CTC encoder, a CTC interleaver for interleaving the input data bitsusing 4 CTC interleaver parameters (P₀, P₁, P₂, and P₃) corresponding toa size of the input data bits, a second encoder for providing secondencoded bits by encoding the interleaved input data bits, and atransmission module for selectively transmitting the input data bits,the first encoded bits, and the second encoded bits according to apredefined code rate, wherein the size of the input data bits is one ofM predetermined data bit sizes, and wherein P₀ is relative prime numberwith N which is ½ of the size of the input data bits, P₁ is a multipleof 2 among natural numbers, P₂ is a multiple of 4 among the naturalnumbers, and wherein P₃ is a multiple of 2 among the natural numberswhen (P₁ modulo 4)=2, and P₃ is a multiple of 4 among the naturalnumbers when (P₁ modulo 4)=0.

It is to be understood that both the foregoing general description andthe following detailed description of the present invention areexemplary and explanatory and are intended to provide furtherexplanation of the invention as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are included to provide a furtherunderstanding of the invention and are incorporated in and constitute apart of this application, illustrate embodiment(s) of the invention andtogether with the description serve to explain the principle of theinvention. In the drawings:

FIG. 1 illustrates simulation results of padding overhead according toCTC data block sizes suggested in Table 1.

FIG. 2 illustrates a preferred embodiment of a CTC encoder according tothe present invention.

FIGS. 3 and 4 illustrate comparison between BLER performance of a CTCinterleaver using data block sizes and CTC interleaver parameterssuggested in the present invention and BLER performance of theconventional IEEE 802.16e CTC interleaver for each mother code rate.

DETAILED DESCRIPTION OF THE INVENTION

Reference will now be made in detail to the preferred embodiments of thepresent invention with reference to the accompanying drawings. Thedetailed description, which will be given below with reference to theaccompanying drawings, is intended to explain exemplary embodiments ofthe present invention, rather than to show the only embodiments that canbe implemented according to the invention. The following detaileddescription includes specific details in order to provide a thoroughunderstanding of the present invention. However, it will be apparent tothose skilled in the art that the present invention may be practicedwithout such specific details. For example, although the followingdescription will be given with reference to specific terms, the presentinvention is not necessarily limited to the specific terms and otherterms may also be used to indicate the same meanings The same referencenumbers will be used throughout this specification to refer to the sameor like parts.

The expression “a portion includes a specific component” used throughoutthis specification indicates that the portion may also include othercomponents, rather than including the specific component alone, unlessexplicitly stated otherwise.

Technologies described below can be used in various communicationsystems, which may provide various communication services such as voiceand packet data services. The communication system technologies can beused in downlink or uplink. In the description of the present invention,the term “Base Station (BS)” may be replaced with another term such as“fixed station”, “Node B”, “eNode B (eNB)”, “access point”, or “ABS”.The “Mobile Station (MS)” may also be replaced with another term such as“User Equipment (UE)”, “Subscriber Station (SS)”, “Mobile SubscriberStation (MSS)”, “AMS”, or “mobile terminal”.

The term “transmitting end” refers to a node that transmits data oraudio services and “receiving end” refers to a node that receives dataor audio services. Thus, in uplink, the MS may be a transmitting end andthe BS may be a receiving end. Similarly, in downlink, the MS may be areceiving end and the BS may be a transmitting end.

A Personal Digital Assistant (PDA), a cellular phone, a PersonalCommunication Service (PCS) phone, a Global System for Mobile (GSM)phone, a Wideband CDMA (WCDMA) phone, or a Mobile Broadband System (MBS)phone may be used as the MS in the present invention.

The embodiments of the present invention can be supported by standarddocuments of at least one of the Institute of Electrical and ElectronicsEngineers (IEEE) 802 system, the 3GPP system, the 3rd GenerationPartnership Project Long Term Evolution (3GPP LTE) system, and the 3GPP2system which are wireless access systems. That is, steps or portionsthat are not described in the embodiments of the present invention forthe sake of clearly describing the spirit of the present invention canbe supported by the standard documents. For all terms used in thisdisclosure, reference can be made to the standard documents. Especially,the embodiments of the present invention can be supported byP802.16-2004, P802.16e-2005, or P802.16Rev2 which are standard documentsof the IEEE 802.16 system.

Specific terms used in the following description are provided for betterunderstanding of the present invention and can be replaced with otherterms without departing from the spirit of the present invention.

CTC data block size requirements in the IEEE 802.16m system aredescribed as follows. First, data block sizes of the IEEE 802.16m systemnot only need to support data block sizes of the conventional IEEE802.16e system but also need to be byte-aligned. The data block size isnot a multiple of 7 to support a tail-biting encoding structure of CTC.It is preferable that the data block size set be designed to have bettergranularity to reduce padding overhead. In addition, the CTC data blocksize of the conventional IEEE 802.16e system needs to be supported byCTC of the IEEE 802.16m system. Each data block size needs to beincreased to improve CTC performance and CTC interleaver parameters needto be optimized to achieve better CTC performance than in the IEEE802.16e system. Rules of the CTC data block size together withgranularity are described below.

1. Granularity for the data block sizes is increased taking intoconsideration padding overhead. First, it is preferable that a boundarydata block size be defined so as to increase the granularity value. Itis also preferable that granularity be defined taking into considerationthe same padding parts of the boundary data block sizes.

2. It is preferable that the granularity value of the data block size isa multiple of 8 and byte-aligned.

3. As an exception to these rules, the granularity value may be twice ashigh as the desired granularity value in order to avoid data block sizeswhich are multiples of 7.

The CTC data block size rules are described below in more detail.

The boundary data block size used may be expressed as a power of 2taking into consideration the minimum granularity value of 8. Theboundary data block size may be 512, 1024, or 2048. The maximum paddingbit portion may be fixed to 1.5625% of the entire boundary data blocksize.

For example, let us consider “40” and “48” as adjacent data block sizes.Here, the smaller data block size is 40 and the larger data block sizeis 48. A granularity value G may be defined by measuring the smallerdata block size N_(EP) among the two adjacent data block sizes. Forexample, G may be 8 when 40≦N_(EP)≦512. On the other hand, G may be 16when 512≦N_(EP)≦1024, 32 when 1024≦N_(EP)≦2048, and 64 when 2048≦N_(EP).

The greater data block size N_(EP+) among the two adjacent data blocksizes may be defined as follows.

For example, N_(EP+)=N_(EP)+G when (N_(EP)+G) %7≠0, otherwiseN_(EP+)=N_(EP)+2G.

Here, %7 represents a modulo-7 operation.

According to these rules, the CTC data block size in the IEEE 802.16msystem may be defined as shown in Table 1.

TABLE 2 Index N_(EP) 1 40 2 48 3 64 4 72 5 80 6 88 7 96 8 104 9 120 10128 11 136 12 144 13 152 14 160 15 176 16 184 17 192 18 200 19 208 20216 21 232 22 240 23 248 24 256 25 264 26 272 27 288 28 296 29 304 30312 31 320 32 328 33 344 34 352 35 360 36 368 37 376 38 384 39 400 40408 41 416 42 424 43 432 44 440 45 456 46 464 47 472 48 480 49 488 50496 51 512 52 528 53 544 54 576 55 592 56 608 57 624 58 640 59 656 60688 61 704 62 720 63 736 64 752 65 768 66 800 67 816 68 832 69 848 70864 71 880 72 912 73 928 74 944 75 960 76 976 77 992 78 1024 79 1056 801088 81 1152 82 1184 83 1216 84 1248 85 1280 86 1312 87 1376 88 1408 891440 90 1472 91 1504 92 1536 93 1600 94 1632 95 1664 96 1696 97 1728 981760 99 1824 100 1856 101 1888 102 1920 103 1952 104 1984 105 2048 1062112 107 2176 108 2304 109 2368 110 2432 111 2496 112 2560 113 2624 1142752 115 2816 116 2880 117 2944 118 3008 119 3072 120 3200 121 3264 1223328 123 3392 124 3456 125 3520 126 3648 127 3712 128 3776 129 3840 1303904 131 3968 132 4096 133 4160 134 4224 135 4288 136 4352 137 4416 1384544 139 4608 140 4672 141 4736 142 4800

FIG. 1 illustrates simulation results of padding overhead according toCTC data block sizes suggested in Table 1.

Specifically, FIG. 1 illustrates results of comparison between paddingoverhead according to CTC data block sizes of the conventional IEEE802.16e and padding overhead according to the CTC data block sizessuggested in the present invention. As can be seen from FIG. 1, the CTCdata block sizes suggested in the present invention have excellentgranularity and significantly reduce padding overhead, compared to theCTC data block sizes of the conventional IEEE 802.16e system.

FIG. 2 illustrates a preferred embodiment of a data transmissionapparatus that transmits data using a Convolutional Turbo Code (CTC)encoder according to the present invention.

As shown in FIG. 2, the data transmission apparatus according to thepresent invention includes a constituent encoder 210, a CTC interleaver220, and a transmission module (not shown).

When data bits (A, B) for coding are alternately input to the CTCencoder, the CTC encoder encodes the data bits (A, B) using a DualBinary Circular Recursive Systematic Convolutional (CRSC) code. Databits may be input to the CTC encoder on an N_(EP)-bit basis (N_(EP)=2×Nbits) or on a N-bit-pair basis. Here, N_(EP) indicates the CTC datablock size (or CTC bit size).

The CTC encoder may perform encoding in two steps. In the first step, aswitch provided in the CTC encoder is located to position 1 so that databits (A, B) for coding is input to the constituent encoder 210 after aninitialization process is performed through a circular operation. In thesecond step, the switch provided in the CTC encoder is switched toposition 2 so that data bits (A, B) interleaved by the CTC interleaver220 is input to the constituent encoder 210 after an initializationprocess is performed through a circular operation.

The CTC encoder may receive a signal from the outside or from an upperlayer and may acquire N_(EP) information having an encodable block size.Here, N_(EP)=2×N, where N is the actual interleaver size and N is CTCdata block size/2.

Data bits (A,B) is alternately input to the constituent encoder 210receive for encoding. Specifically, the Most Significant Bit (MSB) of adata bit sequence may be input as the data bit A and a next bit may beinput as the data bit B. This procedure may be repeated for the entirebit sequence. Here, the MSB of a value is a binary number that mostsignificantly affects the magnitude of the value in a bit-basedoperation. That is, the MSB is the leftmost bit in a bit sequencerepresenting the value.

The constituent encoder 210 may encode data bits (A, B) received throughtwo input ports. Here, the constituent encoder 210 may perform encodingin two steps. The constituent encoder 210 may include a first encoder C₁that encodes data bits (A, B) received through the two input ports and asecond encoder C₂ that encodes data bits (A, B) received through the twoinput ports after being interleaved by the CTC interleaver 220. How databits are interleaved through the CTC interleaver 220 is described belowin more detail.

The CTC interleaver 220 may interleave data bits (A, B) received throughthe two input ports. The CTC interleaver 220 may receive the MSB of adata bit sequence as the data bit A and then receive a next bit thereofas the data bit B. This procedure may be repeated for the entire bitsequence input to the CTC interleaver 220.

The CTC interleaver 220 randomizes a data bit sequence inputted in unitsof a predetermined size to be used for improving codeword distanceproperties.

The CTC encoder may sequentially output data bits (A, B) inputtedthrough the two input ports and data bit values encoded through theconstituent encoder 210. For example, the output bits may be“ABY1Y2W1W2” in the case of code rate ⅓. The output bits may be “ABY1Y2”through removal of “W1” and “W2” in the case of code rate ⅓. Here, theoutput data bits (A, B) correspond to a systematic part and the databits (Y1, W1) or (Y2, W2) output through the constituent encoder 210corresponding to a parity part. The size of data bits output at theparity part may vary depending on code rate.

The transmission module (not shown) may selectively transmit data bitsreceived through the two input ports, first encoded bits output from thefirst encoder C₁, and second encoded bits output from the second encoderC₂.

The operation of the CTC interleaver 220 is briefly described asfollows.

The CTC interleaver 220 performs interleaving in two steps according toCTC interleaver parameters P₀, P₁, P₂, and P₃.

In the first step, the CTC interleaver 220 performs bit pair swapping ofthe data bits (A, B) to be coded. Specifically, first, the CTCinterleaver 220 swaps the positions of each pair of bits such thatif(j_(mod 2)==0) let (B,A)=(A,B) for j=0, 1, 2, . . . , N−1. Forexample, let the input sequence be u₀=[(A₀, B₀), (A₁, B₁), (A₂, B₂), . .. , (A_(N−1), B_(N−1))]. The CTC interleaver 220 performs bit pairswapping on each even symbol in the first step. That is, when u₁ is thebit-pair-swapped sequence, u₁=[(A₀, B₀), (B₁, A₁), (A₂, B₂), . . . ,(B_(N−1), A_(N−1))]=[u₁(0), u₁(1), u₁(2), . . . , u₁(N−1)].

In the second step, the CTC interleaver 220 generates an interleavingaddress for swapped bit pair. The CTC interleaver 220 generates aninterleaving address P(j) for a jth bit pair, completing theinterleaving process. Here, P(j) may provide the address of the u₁sequence. That is, u₂ (j)=u₁(P(j)). As a result, u₂=[(B_(p(0)),A_(p(0)), (A_(p(1)), B_(p(1))), (B_(p(2)), A_(p(2))), . . . ,(A_(p(N−1)), B_(p(N−1)))]. This sequence u₂ may be input to the secondencoder.

The above process may be expressed as follows.

For j=0, 1, 2, . . . , N−1,

switch (j mod 4):

case 0: P(j)=(P₀·j+1) mod N:

case 1: P(j)=(P₀·j+1+N/2+P₁) mod N:

case 2: P(j)=(P₀·j+1+P₂) mod N:

case 3: P(j)=(P₀·j+1+N/2+P₃) mod N:

As described above, the CTC interleaver 220 may perform interleaving byswapping a pair of bits of each even symbol in the first step andgenerating an interleaving address on the j^(th) bit pair according tothe above expression in the second step. The generated address may beassociated with a data block index and the CTC interleaver 220 mayperform interleaving using the associated data block index and 4corresponding CTC interleaver parameters.

A method for optimizing the CTC interleaver 220 in the IEEE 802.16msystem is described below. The CTC interleaver 220 may be designed andoptimized according to the CTC data block sizes according to the presentinvention.

The CTC interleaver structure in the IEEE 802.16m system may be reused.The CTC interleaver 220 knows CTC interleaver parameters (P₀, P₁, P₂,and P₃) corresponding to each data block size. The method may beperformed using the 4 CTC interleaver parameters and the data block sizein the following manner (Here, N is data block size/2).

The CTC interleaver may be designed and optimized taking intoconsideration the two steps of interleaving described above. The methodfor optimally designing CTC interleaver parameters may include thefollowing steps.

In the first step, a spatial distance is calculated using a parametertest set. The following parameter test set may be considered, takinginto account the CTC interleaver structure. That is, four parameters P₀,P₁, P₂, and P₃ preferably have the following characteristics.

First, P₀ is relatively prime to N.

P₁ is a natural number, which is a multiple of 2, such that P₁=0, 2, 4,. . . , N−2.

P₂ is a natural number, which is a multiple of 4, such that P₂=0, 4, 8,. . . , N−4.

P₃ is a natural number, which is a multiple of 2, such that P₃=0, 2, 4,. . . , N−2 when P₁% 4=2 and is a natural number, which is a multiple of4, such that P₃=0, 4, 8, . . . , N−4 when P₁% 4=0.

Here, %4 represents a modulo-4 operation.

The spatial distance may be defined as in the following Expression 1.S(j ₁ ,j ₂)=f(j ₁ ,j ₂)+f(Π(j ₁),Π(j ₂))  [Expression 1]

Here, f(u,v)=min [|u−v|,k−|u−v|] and f(j₁, j₂) denotes a distance beforeinterleaving, f(Π(j₁),Π(j₂)) denotes a distance after interleaving. Thespatial distance can be calculated for all index combinations (j₁, j₂).In addition, S_(min) denotes the minimum spatial distance of the CTCinterleaver among spatial distances of the index combinations.

Specifically, a parameter P₀, which is relatively prime number to N, isselected in the following manner.

Preferably, P₀ is an integer which is among relative prime numbers withN. However, for some data block sizes.

S_(min) may be sorted by magnitude. CTC interleaving patterns may begenerated using all combinations (P₁, P₂, P₃)={(0, 0, 0), (0, 0, 2), . .. , (2, 0, 0), (2, 0, 2, or 4), . . . , (N−2, N−4, N−2, or N−4) togetherwith P₀. S_(min) may be calculated for each combination of (P₁, P₂, P₃).After minimum spatial distances S_(min) are calculated respectively forall parameter combinations, the top 5 parameter combinations may beextracted from among parameter combinations having the minimum spatialdistances when the parameter combinations are sorted in decreasing orderof the minimum spatial distance. The 5 parameter combinations having theminimum spatial distances sorted and extracted in this manner may beused in the second step of the method of designing and optimizing CTCinterleaver parameters.

In the second step, a Return To Zero (RTZ) spatial distance may becalculated using the extracted parameter combinations. The RTZ sequencemay be represented as follows taking into consideration CTC encodergeneration polynomial equations.

idx1 − idx2 = 1 Weight = 6 13 idx1 − idx2 = 2 Weight = 7 201 idx1 − idx2= 3 Weight = 9 2003 idx1 − idx2 = 4 Weight = 9 30002 idx1 − idx2 = 5Weight = 11 100002 idx1 − idx2 = 6 Weight = 10 3000001 idx1 − idx2 = 7Weight = 12 10000001 idx1 − idx2 = 7 Weight = 14 20000002 idx1 − idx2 =7 Weight = 12 30000003 idx1 − idx2 = 8 Weight = 14 100000003 idx1 − idx2= 9 Weight = 15 2000000001 idx1 − idx2 = 10 Weight = 17 20000000003 idx1− idx2 = 11 Weight = 17 300000000002 idx1 − idx2 = 12 Weight = 191000000000002 idx1 − idx2 = 13 Weight = 18 30000000000001 idx1 − idx2 =14 Weight = 20 100000000000001 idx1 − idx2 = 14 Weight = 22200000000000002 idx1 − idx2 = 14 Weight = 20 300000000000003 . . .

When the result of interleaving of an input RTZ sequence by applying bitpair swapping to the input RTZ sequence in the first step of theinterleaving procedure is also an RTZ sequence, a spatial distance maybe calculated for the RTZ sequence. Here, S_(RTZ,min) is the minimumspatial distance of the RTZ sequence.

After minimum spatial distances S_(RTZ,min) are calculated respectivelyfor the each parameter combinations extracted in the first step, thecalculated five minimum spatial distances S_(RTZ,min) may sorted indecreasing order. Parameter combinations having the 5 minimum RTZspatial distances obtained in this manner may be used in the third stepof the method of designing and optimizing CTC interleaver parameters.

In the third step, the minimum distance is calculated using an ErrorIMpulse (EIM) method.

The CTC encoder may perform the EIM method using 2-bit data input to theCTC encoder. In order to calculate the minimum distance d_(min) usinginterleaving patterns generated using the parameter combinations, eachof the first and second encoders may perform the EIM method twice usingthe input bits A and B through its the first and second encoders. Thus,the minimum distance of code may be checked using the EIM method.Max-Log-MAP decoding having 64 repetitions may be used for the EIMmethod. This may be represented by the following algorithm.

set A_(min) = d₁ + 0.5  for i=1 to n do A = d₀ −0.5; set[{{circumflexover (^(x))} = x}= TRUE while [{{circumflex over (^(x))} = x}= TRUE] and{A≦ A_(min) −1.0} do  * A= A+1.0 ;  * y= {−1,•••, −1, −1+ A, −1, −1,•••,−1} Where −1+A is in position i; * ML decoding of y {circumflex over(^(x))} ; * if ({circumflex over (^(x))} ≠ x) then [{{circumflex over(^(x))} = x}= FALSE]; end while A_(min) = A end for d_(min) is theinteger part of A_(min)

After minimum distances d_(min) are calculated respectively for the eachparameter combinations obtained in the second step, the top threeminimum distances d_(min) may be obtained when the calculated minimumdistances d_(min) are sorted in decreasing order. Parameter combinationshaving the three minimum distances d_(min) obtained in this manner maybe used in the last step, namely, the fourth step, of the method ofdesigning and optimizing CTC interleaver parameters. Here, the minimumdistance may represent a measure of performance since performancegenerally increases as the minimum distance increases.

In the fourth step, performance is estimated using mother code rates of½ and ⅓. A BLock Error Rate (BLER) may be estimated after the motor coderate is set to ½ and ⅓ for the parameter combinations extracted in thethird step. Parameter combinations which exhibit highest performance forall the code rates ½ and ⅓ may be selected after performance isestimated for each data block size.

The present invention suggests the following data block sizes and thefollowing CTC interleaver parameters corresponding to the data blocksizes according to the present invention described above. Some CTCinterleaver parameters of the following Table 3 are changed from thoseof the Table 2.

TABLE 3 Index N_(EP) P₀ P₁ P₂ P₃ 1 48 5 0 0 0 2 64 11 12 0 12 3 72 11 180 18 4 80 7 4 32 36 5 88 13 36 36 32 6 96 13 24 0 24 7 104 7 4 8 48 8120 11 30 0 34 9 128 13 46 44 30 10 136 13 58 4 58 11 144 11 6 0 6 12152 11 38 12 74 13 160 13 68 76 64 14 176 17 52 68 32 15 184 13 2 0 2 16192 7 58 48 10 17 200 11 76 0 24 18 208 11 10 32 42 19 216 11 54 56 2 20232 11 70 60 58 21 240 13 60 0 60 22 248 13 6 84 46 23 256 11 64 8 8 24264 13 72 68 8 25 272 13 82 44 38 26 288 17 74 72 2 27 296 13 0 84 64 28304 13 130 112 46 29 312 11 32 124 108 30 320 17 84 108 132 31 328 17148 160 76 32 344 17 160 116 52 33 352 17 106 56 50 34 360 17 40 132 12835 368 19 88 0 172 36 376 13 110 92 14 37 384 11 96 48 144 38 400 19 1420 142 39 408 23 42 20 46 40 416 17 102 132 178 41 424 17 138 56 18 42432 17 126 92 74 43 440 19 48 20 144 44 456 17 184 0 48 45 464 17 62 52114 46 472 19 40 104 28 47 480 13 120 60 180 48 488 17 140 92 220 49 49617 194 0 58 50 512 19 64 52 124 51 528 17 36 196 100 52 544 19 222 248134 53 576 23 76 220 92 54 592 23 96 172 36 55 608 23 288 244 140 56 62423 286 220 70 57 640 23 84 296 236 58 656 23 24 300 52 59 688 19 320 4324 60 704 19 52 76 256 61 720 23 130 156 238 62 736 29 126 208 270 63752 23 26 24 230 64 768 29 252 0 8 65 800 23 150 216 150 66 816 29 342132 42 67 832 23 354 164 198 68 848 29 234 388 82 69 864 29 216 272 18070 880 29 410 328 218 71 912 29 14 264 94 72 928 23 446 392 186 73 94423 356 68 332 74 960 23 186 61 10 75 976 31 134 124 366 76 992 29 358480 362 77 1024 29 320 236 324 78 1056 31 86 380 250 79 1088 31 432 216524 80 1152 31 534 372 246 81 1184 31 2 568 94 82 1216 31 368 584 524 831248 31 88 404 608 84 1280 29 152 8 24 85 1312 31 214 160 506 86 1376 31218 20 670 87 1408 29 474 584 118 88 1440 41 288 556 672 89 1472 29 164424 76 90 1504 31 254 416 474 91 1536 31 34 564 710 92 1600 31 454 216234 93 1632 29 334 564 66 94 1664 31 156 568 56 95 1696 37 722 136 69896 1728 31 176 152 516 97 1760 23 646 484 850 98 1824 41 774 548 898 991856 47 576 212 728 100 1888 39 342 596 798 101 1920 43 318 556 778 1021952 35 94 144 686 103 1984 43 84 488 92 104 2048 31 2 332 622 105 211243 96 720 980 106 2176 37 428 976 28 107 2304 41 16 484 888 108 2368 47228 440 724 109 2432 43 452 888 96 110 2496 43 0 208 528 111 2560 53 264488 824 112 2624 47 378 1092 1250 113 2752 37 430 880 970 114 2816 31624 704 400 115 2880 53 184 996 1336 116 2944 41 338 660 646 117 3008 43916 1136 912 118 3072 53 184 824 1368 119 3200 43 1382 632 1086 120 326449 142 828 1354 121 3328 37 258 28 1522 122 3392 51 460 56 1608 123 345643 170 920 1518 124 3520 57 776 1232 1012 125 3648 49 132 720 276 1263712 41 1328 772 1036 127 3776 53 772 256 408 128 3840 53 92 1124 476129 3904 51 664 200 64 130 3968 57 1296 760 1360 131 4096 55 148 808 308132 4160 79 214 308 262 133 4224 59 14 668 1474 134 4288 57 662 1516 42135 4352 59 2052 712 1804 136 4416 59 1342 1968 1562 137 4544 65 13801068 1036 138 4608 67 954 1140 1566 139 4672 67 410 1020 114 140 4736 592 956 458 141 4800 53 66 24 2

Compared to Table 2, in the case of index 16, the data block size (orbit size) is 192 and the CTC interleaver parameters P₀, P₁, P₂, and P₃are changed to 7, 58, 48, and 10. In the case of index 34, the datablock size is 360 and the CTC interleaver parameters P₀, P₁, P₂, and P₃are changed to 17, 40, 132, and 128, respectively. In the case of index42, the data block size is 432 and the CTC interleaver parameters P₀,P₁, P₃, and P₄ are changed to 17, 126, 92, and 74, respectively. In thecase of index 74, the data block size is 960 and the CTC interleaverparameters P₀, P₁, P₂, and P₃ are changed to 23, 186, 61, and 10,respectively. In the case of index 101, the data block size is 1920 andthe CTC interleaver parameters P₀, P₁, P₂, and P₃ are changed to 43,318, 556, and 778, respectively. In the case of index 115, the datablock size is 2880 and the CTC interleaver parameters P₀, P₁, P₂, and P₃are changed to 53, 184, 996, and 1336, respectively. In the case ofindex 128, the data block size is 3840 and the CTC interleaverparameters P₀, P₁, P₂, and P₃ are changed to 53, 92, 1124, and 476,respectively. The changed portions of Table 3 are shown in the followingTable 4.

That is, Table 4 illustrates information of some data block sizes whoseCTC interleaver parameters have been changed from those of Table 3.

TABLE 4 Index N_(EP) P₀ P₁ P₂ P₃ 16 192 7 58 48 10 34 360 17 40 132 12842 432 17 126 92 74 74 960 23 186 61 10 101 1920 43 318 556 778 115 288053 184 996 1336 128 3840 53 92 1124 476

As shown in Table 4, new CTC interleaver parameters are provided for thedata block sizes 192, 360, 432, 960, 1920, 2880, and 3840 in order toimprove performance. The remaining CTC interleaver parameters may beidentical to those of the IEEE 802.16e system to achieve downwardcompatibility (i.e., to support the legacy system).

The following Table 5 is created by removing 34 data block sizes andcorresponding CTC interleaver parameters from those of Table 3 andadding 42 new data block sizes and corresponding CTC interleaverparameters.

TABLE 5 Index N_(EP) P₀ P₁ P₂ P₃ 1 48 5 0 0 0 2 64 11 12 0 12 3 72 11 180 18 4 80 7 4 32 36 5 88 13 36 36 32 6 96 13 24 0 24 7 104 7 4 8 48 8120 11 30 0 34 9 128 13 46 44 30 10 136 13 58 4 58 11 144 11 6 0 6 12152 11 38 12 74 13 160 13 68 76 64 14 176 17 52 68 32 15 184 13 2 0 2 16192 7 58 48 10 17 200 11 76 0 24 18 208 11 10 32 42 19 216 11 54 56 2 20232 11 70 60 58 21 240 13 60 0 60 22 248 13 6 84 46 23 256 11 64 8 8 24264 13 72 68 8 25 272 13 82 44 38 26 288 17 74 72 2 27 296 13 0 84 64 28304 13 130 112 46 29 312 11 32 124 108 30 320 17 84 108 132 31 328 17148 160 76 32 344 17 160 116 52 33 352 17 106 56 50 34 360 17 40 132 12835 368 19 88 0 172 36 376 13 110 92 14 37 384 11 96 48 144 38 400 19 1420 142 39 416 17 102 132 178 40 432 17 126 92 74 41 440 19 48 20 144 42456 17 184 0 48 43 472 19 40 104 28 44 480 13 120 60 180 45 496 17 194 058 46 512 19 64 52 124 47 528 17 36 196 100 48 544 19 222 248 134 49 55213 198 180 190 50 568 19 102 140 226 51 584 21 74 20 214 52 600 31 12272 28 53 608 23 288 244 140 54 624 23 286 220 70 55 640 23 84 296 23656 656 23 24 300 52 57 664 23 272 220 60 58 680 19 48 240 144 59 696 31252 216 48 60 712 25 214 180 286 61 720 23 130 156 238 62 736 29 126 208270 63 752 23 26 24 230 64 768 29 252 0 8 65 776 29 100 196 140 66 80023 150 216 150 67 824 29 130 332 42 68 848 29 234 388 82 69 872 29 408300 316 70 888 25 414 84 414 71 912 29 14 264 94 72 936 25 272 168 40073 960 53 62 12 2 74 984 31 142 40 342 75 1000 29 290 148 446 76 1024 29320 236 324 77 1048 27 424 212 416 78 1072 35 290 228 390 79 1096 23 178392 430 80 1112 33 38 244 550 81 1136 37 170 276 134 82 1160 31 314 348222 83 1184 31 2 568 94 84 1216 31 368 584 524 85 1248 31 88 404 608 861280 29 152 8 24 87 1312 31 214 160 506 88 1336 39 2 168 646 89 1368 29570 348 574 90 1392 31 218 484 446 91 1424 31 676 124 184 92 1448 33 254372 158 93 1480 31 32 716 736 94 1504 31 254 416 474 95 1536 31 34 564710 96 1560 29 300 248 568 97 1600 31 454 216 234 98 1640 33 164 432 74899 1672 35 164 368 700 100 1712 41 4 848 332 101 1752 31 314 656 666 1021784 33 886 888 518 103 1824 41 774 548 898 104 1864 33 504 444 664 1051896 35 936 940 832 106 1920 43 318 556 778 107 1952 35 94 144 686 1082000 37 290 692 638 109 2048 31 2 332 622 110 2096 39 400 688 68 1112144 29 298 252 610 112 2192 39 1074 148 710 113 2232 29 240 496 1100114 2280 41 474 376 814 115 2328 41 254 884 1054 116 2368 47 228 440 724117 2432 43 452 888 96 118 2496 43 0 208 528 119 2560 53 264 488 824 1202624 47 378 1092 1250 121 2752 37 430 880 970 122 2816 31 624 704 400123 2880 43 720 360 540 124 2944 41 338 660 646 125 3008 43 916 1136 912126 3072 53 184 824 1368 127 3200 43 1382 632 1086 128 3264 49 142 8281354 129 3328 37 258 28 1522 130 3392 51 460 56 1608 131 3456 43 170 9201518 132 3520 57 776 1232 1012 133 3648 49 132 720 276 134 3712 41 1328772 1036 135 3776 53 772 256 408 136 3840 53 92 1124 476 137 3904 51 664200 64 138 3968 57 1296 760 1360 139 4096 55 148 808 308 140 4160 79 214308 262 141 4224 59 14 668 1474 142 4288 57 662 1516 42 143 4352 59 2052712 1804 144 4416 59 1342 1968 1562 145 4544 65 1380 1068 1036 146 460867 954 1140 1566 147 4672 67 410 1020 114 148 4736 59 2 956 458 149 480053 66 24 2

As shown in Table 5, the 42 newly added data block sizes are 552, 568,584, 600, 664, 680, 696, 712, 776, 824, 872, 888, 936, 984, 1000, 1048,1072, 1096, 1112, 1136, 1160, 1336, 1368, 1392, 1424, 1448, 1480, 1560,1640, 1672, 1712, 1752, 1784, 1864, 1896, 2000, 2096, 2144, 2192, 2232,2280, and 2328.

Table 6 shows 39 data block sizes, which are preferable for use ininterleaving among data block sizes shown in Table 5, and CTCinterleaver parameters values corresponding to the 39 data block sizes.

TABLE 6 Index N_(EP) P₀ P₁ P₂ P₃ 1 48 5 0 0 0 2 64 11 12 0 12 3 72 11 180 18 4 80 7 4 32 36 5 88 13 36 36 32 6 96 13 24 0 24 7 104 7 4 8 48 8120 11 30 0 34 9 136 13 58 4 58 10 152 11 38 12 74 11 176 17 52 68 32 12200 11 76 0 24 13 216 11 54 56 2 14 248 13 6 84 46 15 288 17 74 72 2 16320 17 84 108 132 17 352 17 106 56 50 18 400 19 142 0 142 19 456 17 1840 48 20 512 19 64 52 124 21 568 19 102 140 226 22 640 23 84 296 236 23720 23 130 156 238 24 800 23 150 216 150 25 912 29 14 264 94 26 1024 29320 236 324 27 1160 31 314 348 222 28 1312 31 214 160 506 29 1448 33 254372 158 30 1640 33 164 432 748 31 1864 33 504 444 664 32 2096 39 400 68868 33 2328 41 254 884 1054 34 2624 47 378 1092 1250 35 2944 41 338 660646 36 3328 37 258 28 1522 37 3776 53 772 256 408 38 4224 59 14 668 147439 4800 53 66 24 2

The CTC interleaver parameter tables may be expressed according to datablock sizes as described above with reference to Tables 2 to 6 accordingto the CTC interleaver design and optimization procedure according tothe present invention.

FIGS. 3 and 4 illustrate comparison between BLER performance of a CTCinterleaver using data block sizes and CTC interleaver parameterssuggested in the present invention and BLER performance of theconventional IEEE 802.16e CTC interleaver for each mother code rate.

Specifically, FIGS. 3 and 4 illustrate comparison between a Signal toNoise Ratio (SNR) required for the data block size when mother code rateis ½ and ⅓ and when BLER is 10%, 1%, and 0.1%. Performance increases asthe data block size increases since the SNR decreases as the data blocksize increases as shown in FIGS. 3 and 4. This indicates that theperformance of the CTC interleaver according to the present invention isbetter than the CTC interleaver of the conventional IEEE 802.16m systemusing small data block sizes.

The apparatus and method for transmitting data using the CTC interleaverhave been described above. An apparatus and method for receiving datausing the CTC interleaver corresponding to the transmission apparatusand method are described below with reference to the above description.

The apparatus for receiving data using the CTC interleaver may include afirst decoder that decodes received values of data bits input throughtwo input terminals and outputs a Log Likelihood Ratio (LLR) of firstdecoded bits, a CTC interleaver that interleaves received values of theinput data bits using 4 CTC interleaver parameters P₀, P₁, P₂, and P₃corresponding to the size of the input data bits, and a second decoderthat decodes the received value of the interleaved data bits and outputsa Log Likelihood Ratio (LLR) of second decoded bits. The functions andprocesses of the interleaver of the CTC decoder are identical to thoseof the interleaver of the CTC encoder. Thus, a detailed description ofthe interleaver of the CTC decoder is omitted herein.

The above embodiments are provided by combining components and featuresof the present invention in specific forms. The components or featuresof the present invention should be considered optional unless explicitlystated otherwise. The components or features may be implemented withoutbeing combined with other components or features. The embodiments of thepresent invention may also be provided by combining some of thecomponents and/or features. The order of the operations described abovein the embodiments of the present invention may be changed. Somecomponents or features of one embodiment may be included in anotherembodiment or may be replaced with corresponding components or featuresof another embodiment. It will be apparent that claims which are notexplicitly dependent on each other can be combined to provide anembodiment or new claims can be added through amendment after thisapplication is filed.

The embodiments of the present invention can be implemented by hardware,firmware, software, or any combination thereof. In the case where thepresent invention is implemented by hardware, an embodiment of thepresent invention may be implemented by one or more Application SpecificIntegrated Circuits (ASICs), Digital Signal Processors (DSPs), DigitalSignal Processing Devices (DSPDs), Programmable Logic Devices (PLDs),Field Programmable Gate Arrays (FPGAs), processors, controllers,microcontrollers, microprocessors, or the like.

In the case where the present invention is implemented by firmware orsoftware, the embodiments of the present invention may be implemented inthe form of modules, processes, functions, or the like which perform thefeatures or operations described above. Software code can be stored in amemory unit so as to be executed by a processor. The memory unit may belocated inside or outside the processor and can communicate data withthe processor through a variety of known means.

As is apparent from the above description, an apparatus and method for atransmitting end to transmit data using a Convolutional Turbo Code (CTC)encoder in a mobile communication system according to the presentinvention have a variety of advantages.

For example, it is possible to significantly reduce padding overhead byapplying additional input data bit sizes suggested in the presentinvention.

The reduction of the padding overhead also enables more efficient datatransmission.

The apparatus and method for transmitting data using a CTC interleaveraccording to the present invention can be used industrially.

Those skilled in the art will appreciate that the present invention maybe embodied in other specific forms than those set forth herein withoutdeparting from the spirit and essential characteristics of the presentinvention. The above description is therefore to be construed in allaspects as illustrative and not restrictive. The scope of the inventionshould be determined by reasonable interpretation of the appended claimsand all changes coming within the equivalency range of the invention areintended to be embraced in the scope of the invention.

What is claimed is:
 1. A method of transmitting data using aConvolutional Turbo Code (CTC) encoder by a transmitting end in a mobilecommunication system, the method comprising: providing input data bits;and interleaving the input data bits using 4 CTC interleaver parameters(P₀, P₁, P₂, and P₃) corresponding to a size of the input data bitsinputted to two input ports of a CTC interleaver, wherein the size(N_(EP)) of the input data bits is one of bit sizes in Table A, andwherein P₀, P₁, P₂, and P₃ corresponding to the size (N_(EP)) of theinput data bit are determined as one row selected among in Table A:TABLE A Index N_(EP) P₀ P₁ P₂ P₃ 1 64 11 12 0 12 2 80 7 4 32 36 3 88 1336 36 32 4 104 7 4 8 48 5 120 11 30 0 34 6 136 13 58 4 58 7 152 11 38 1274 8 176 17 52 68 32 9 200 11 76 0 24 10 248 13 6 84 46 11 320 17 84 108132 12 352 17 106 56 50 13 400 19 142 0 142 14 456 17 184 0 48 15 512 1964 52 124 16 568 19 102 140 226 17 640 23 84 296 236 18 720 23 130 156238 19 800 23 150 216 150 20 912 29 14 264 94 21 1024 29 320 236 324 221152 31 534 372 246 23 1312 31 214 160 506 24 1440 41 288 556 672 251632 29 334 564 66 26 1856 47 576 212 728 27 2112 43 96 720 980 28 236847 228 440 724 29 2624 47 378 1092 1250 30 2944 41 338 660 646 31 332837 258 28 1522 32 3776 53 772 256 408 33 4224 59 14 668
 1474.


2. The method according to claim 1, wherein the CTC interleaverparameter P₀ is an integer close to √{square root over (2N)} among therelative prime numbers with N.
 3. The method according to claim 1,wherein the size (N_(EP)) of the input data bits include at least oneadditional bit size, other than 48, 72, 96, 144, 192, 216, 240, 288,360, 384, 432, 480, 960, 1920, 2800, 3840, and 4800 bits, within a sizerange between 48 bits to 4800 bits.
 4. The method according to claim 1,wherein P₀ is relative prime number with N which is ½ of the size(N_(EP)) of the input data bits, P₁ is a multiple of 2 among a numberset, P₂ is a multiple of 4 among the number set, wherein the number setis defined by a set of integers greater than zero, and wherein P₃ is amultiple of 2 among the number set when (P₁ modulo 4)=2, and P₃ is amultiple of 4 among the number set when (P₁ modulo 4)=0.
 5. Theapparatus according to claim 1, wherein P₀ is relative prime number withN which is ½ of the size (N_(EP)) of the input data bits, P₁ is amultiple of 2 among a number set, P₂ is a multiple of 4 among the numberset, wherein the number set is defined by a set of integers greater thanzero, and wherein P₃ is a multiple of 2 among the number set when (P₁modulo 4)=2, and P₃ is a multiple of 4 among the number set when (P₁modulo 4)=0.
 6. An apparatus for transmitting data using a ConvolutionalTurbo Code (CTC) encoder in a mobile communication system, the apparatuscomprising: a provider for providing input data bits; and a CTCinterleaver for interleaving the input data bits using 4 CTC interleaverparameters (P₀, P₁, P₂, and P₃) corresponding to a size of the inputdata bits, wherein the size (N_(EP)) of the input data bits is one ofbit sizes in Table A, and wherein P₀, P₁, P₂, and P₃ corresponding tothe size (N_(EP)) of the input data bit are determined as one rowselected among in Table A: TABLE A Index N_(EP) P₀ P₁ P₂ P₃ 1 64 11 12 012 2 80 7 4 32 36 3 88 13 36 36 32 4 104 7 4 8 48 5 120 11 30 0 34 6 13613 58 4 58 7 152 11 38 12 74 8 176 17 52 68 32 9 200 11 76 0 24 10 24813 6 84 46 11 320 17 84 108 132 12 352 17 106 56 50 13 400 19 142 0 14214 456 17 184 0 48 15 512 19 64 52 124 16 568 19 102 140 226 17 640 2384 296 236 18 720 23 130 156 238 19 800 23 150 216 150 20 912 29 14 26494 21 1024 29 320 236 324 22 1152 31 534 372 246 23 1312 31 214 160 50624 1440 41 288 556 672 25 1632 29 334 564 66 26 1856 47 576 212 728 272112 43 96 720 980 28 2368 47 228 440 724 29 2624 47 378 1092 1250 302944 41 338 660 646 31 3328 37 258 28 1522 32 3776 53 772 256 408 334224 59 14 668
 1474.


7. The apparatus according to claim 6, wherein the CTC interleaverparameter P₀ is an integer close to √{square root over (2N)} amongrelative prime numbers with N.
 8. The apparatus according to claim 6,wherein the size (N_(EP)) of the input data bits include at least oneadditional bit size, other than 48, 72, 96, 144, 192, 216, 240, 288,360, 384, 432, 480, 960, 1920, 2800, 3840, and 4800 bits, within a sizerange between 48 bits to 4800 bits.